This invention relates generally to computer systems, and more particularly to graphical user interfaces for computer systems.
Graphical user interfaces or GUI are becoming increasingly popular with computer users. It is generally accepted that computers having graphical user interfaces are easier to use, and that it is quicker to learn an application program in a GUI environment than in a non-GUI environment.
A relatively new type of computer which is well suited for graphical user environments is the pen-based or pen-aware computer system. A pen-based computer system is typically a small, hand-held computer where the primary method for inputting data includes a "pen" or stylus. A pen-aware computer system is one which has been modified to accept pen inputs in addition to traditional inputs, such as keyboard inputs. Both pen-based and pen-aware computer systems can be generically referred to as "pen computer systems" or "pen systems."
A pen computer system is often housed in a relatively flat enclosure, and typically has a dual-function display assembly which serves as both an input device and an output device. When operating as an input device, the display assembly senses the position of the tip of a stylus on the viewing screen and provides this positional information to the computer's central processing unit (CPU), i.e. the display assembly can serve as an input "tablet." Some display assemblies can also sense the pressure of the stylus on the screen to provide further information to the CPU. When operating as an output device, the display assembly presents computer-generated images on the screen.
The dual-function display assemblies of pen computer systems permit users to operate the computer as a computerized notepad. For example, graphical images can be input into the pen computer by merely making strokes with the stylus on the surface of the screen. A "stroke" is generally defined as the engagement of the screen by a stylus, the movement of the stylus across the screen (if any), and its subsequent disengagement from the screen. As the CPU senses the position and movement of the stylus, it can generate a corresponding image on the screen to create the illusion that the stylus is drawing the image directly upon the screen, i.e. that the stylus is "inking" an image on the screen. With suitable recognition software, text and numeric information can also be entered into the pen computer system in a similar fashion. Besides serving as a notepad, pen computers can provide a number of useful functions, such as serving as an address book, an appointment calendar, a to-do list, etc.
Because pen computer systems are often limited to stylus type inputs, pen system designers often create a number of small utilities to aid in the input process. These utilities can be displayed on the screen of the pen computer as icons and activated by a tap of the stylus or some other stylus gesture. Alternatively, the utilities can be stored off-screen. As the number of utilities increases, it becomes more difficult to organize these utilities and more cumbersome to activate them. Separate icons provided on the pen computer's screen for each of these utilities reduces the actual "desk space" usable for application program windows. Further, activation of the utilities often does not allow for flexibility in placement or size. Input tools created by these utility programs are sometimes placed in specific areas of the screen, which also limits user control of the screen desk space.
When reliable recognition of input text information and characters is desired, the keyboard is one of the most accurate methods of entering data. To maintain the purpose and portability of a pen computer system, addition of an external keyboard is not usually practical, but the benefits of such an addition are definitely desirable. These benefits can be achieved in a pen system by an input utility which provides a keyboard image on the computer's screen. Data can then be input to the system by selecting a "key" on the keyboard image with a stylus.
A prior art form of a keyboard input utility is the Key Caps Desk Accessory available on Macintosh computers available from Apple Computer, Inc. of Cupertino, Calif. Key Caps is a pop-up keyboard that displays a replica of the layout of the last keyboard used with the system to allow "typing" of text by selection of the keys with a mouse or other pointer mechanism. The typed text in Key Caps is displayed in a separate one line display of the keyboard. While Key Caps provides a keyboard for typing input by using a mouse or other pointer mechanism, it does not perform like an external keyboard, because it is incapable of directly inputting data into an active application program.
Another prior art form of a visual keyboard utility is provided in PENPOINT.TM. Operating System from GO Corporation of Foster City, Calif. However, the PENPOINT keyboard only operates in conjunction with applications specifically designed for the PENPOINT operating system. In consequence, the PENPOINT keyboard cannot emulate a physical keyboard for non-pen-aware application programs which require physical keyboard input.
Pen Windows from Microsoft Corporation of Redmond, Wash. is also an operating system for pen computer systems that provides utilities including a keyboard image for inputting data. It operates similarly to the PENPOINT operating system but differs from PENPOINT by operating with non-pen-aware application programs.
In view of the foregoing, there is a need for the flexible and organized control of input utilities in a pen computer system. The utilities should preferably be easily activated with user control over size and placement of the utilities. The utilities should preferably be grouped together in a logical fashion, and should always be available for activation.